package com.dms_back1.annotation;

import java.lang.annotation.*;
import java.util.concurrent.TimeUnit;

@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface RateLimit {
    /**
     * 限流的key前缀
     */
    String key() default "";

    /**
     * 限流时间窗口，默认1秒
     */
    int time() default 1;

    /**
     * 时间单位，默认秒
     */
    TimeUnit unit() default TimeUnit.SECONDS;

    /**
     * 在时间窗口内允许的请求数
     */
    int count() default 10;

    /**
     * 限流提示语
     */
    String message() default "请求过于频繁，请稍后再试";
} 